Virtualization is the abstraction of computing resources. Virtualization defines a virtual equivalent of an actual hardware or software component. Hardware virtualization may simulate a platform, a storage device, a network resource, an operating system or another component. A virtual machine is a software instance that acts similar to a physical computer with an operating system. The virtual machine may execute software separated from the underlying hardware.
Hardware virtualization involves host machines and guest machines. A host machine is the physical machine on which the hardware virtualization occurs. A guest machine is the virtual machine created by the host machine. Hardware resources may be separated in hardware virtualization into virtualized infrastructure services such as CPU, memory, and storage.
The separation of the operating system from the physical hardware made possible in virtualization allows multiple guest machines to run on a single host machine. However, virtualization introduces new challenges in software copy protection and the authorized use of virtual resources.